﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Collections;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x02000E73 RID: 3699
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class RogueBuffInfo : IMessage<RogueBuffInfo>, IMessage, IEquatable<RogueBuffInfo>, IDeepCloneable<RogueBuffInfo>, IBufferMessage
	{
		// Token: 0x17002EF4 RID: 12020
		// (get) Token: 0x0600A5F0 RID: 42480 RVA: 0x001BECB8 File Offset: 0x001BCEB8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<RogueBuffInfo> Parser
		{
			get
			{
				return RogueBuffInfo._parser;
			}
		}

		// Token: 0x17002EF5 RID: 12021
		// (get) Token: 0x0600A5F1 RID: 42481 RVA: 0x001BECBF File Offset: 0x001BCEBF
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return RogueBuffInfoReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x17002EF6 RID: 12022
		// (get) Token: 0x0600A5F2 RID: 42482 RVA: 0x001BECD1 File Offset: 0x001BCED1
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return RogueBuffInfo.Descriptor;
			}
		}

		// Token: 0x0600A5F3 RID: 42483 RVA: 0x001BECD8 File Offset: 0x001BCED8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueBuffInfo()
		{
		}

		// Token: 0x0600A5F4 RID: 42484 RVA: 0x001BECEB File Offset: 0x001BCEEB
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueBuffInfo(RogueBuffInfo other) : this()
		{
			this.mazeBuffList_ = other.mazeBuffList_.Clone();
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x0600A5F5 RID: 42485 RVA: 0x001BED15 File Offset: 0x001BCF15
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueBuffInfo Clone()
		{
			return new RogueBuffInfo(this);
		}

		// Token: 0x17002EF7 RID: 12023
		// (get) Token: 0x0600A5F6 RID: 42486 RVA: 0x001BED1D File Offset: 0x001BCF1D
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RepeatedField<RogueBuff> MazeBuffList
		{
			get
			{
				return this.mazeBuffList_;
			}
		}

		// Token: 0x0600A5F7 RID: 42487 RVA: 0x001BED25 File Offset: 0x001BCF25
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as RogueBuffInfo);
		}

		// Token: 0x0600A5F8 RID: 42488 RVA: 0x001BED33 File Offset: 0x001BCF33
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(RogueBuffInfo other)
		{
			return other != null && (other == this || (this.mazeBuffList_.Equals(other.mazeBuffList_) && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x0600A5F9 RID: 42489 RVA: 0x001BED68 File Offset: 0x001BCF68
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			num ^= this.mazeBuffList_.GetHashCode();
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x0600A5FA RID: 42490 RVA: 0x001BED9C File Offset: 0x001BCF9C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x0600A5FB RID: 42491 RVA: 0x001BEDA4 File Offset: 0x001BCFA4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x0600A5FC RID: 42492 RVA: 0x001BEDAD File Offset: 0x001BCFAD
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			this.mazeBuffList_.WriteTo(ref output, RogueBuffInfo._repeated_mazeBuffList_codec);
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x0600A5FD RID: 42493 RVA: 0x001BEDD4 File Offset: 0x001BCFD4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			num += this.mazeBuffList_.CalculateSize(RogueBuffInfo._repeated_mazeBuffList_codec);
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x0600A5FE RID: 42494 RVA: 0x001BEE0D File Offset: 0x001BD00D
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(RogueBuffInfo other)
		{
			if (other == null)
			{
				return;
			}
			this.mazeBuffList_.Add(other.mazeBuffList_);
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x0600A5FF RID: 42495 RVA: 0x001BEE3B File Offset: 0x001BD03B
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x0600A600 RID: 42496 RVA: 0x001BEE44 File Offset: 0x001BD044
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num != 98U)
				{
					this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
				}
				else
				{
					this.mazeBuffList_.AddEntriesFrom(ref input, RogueBuffInfo._repeated_mazeBuffList_codec);
				}
			}
		}

		// Token: 0x04004372 RID: 17266
		private static readonly MessageParser<RogueBuffInfo> _parser = new MessageParser<RogueBuffInfo>(() => new RogueBuffInfo());

		// Token: 0x04004373 RID: 17267
		private UnknownFieldSet _unknownFields;

		// Token: 0x04004374 RID: 17268
		public const int MazeBuffListFieldNumber = 12;

		// Token: 0x04004375 RID: 17269
		private static readonly FieldCodec<RogueBuff> _repeated_mazeBuffList_codec = FieldCodec.ForMessage<RogueBuff>(98U, RogueBuff.Parser);

		// Token: 0x04004376 RID: 17270
		private readonly RepeatedField<RogueBuff> mazeBuffList_ = new RepeatedField<RogueBuff>();
	}
}
